Inside Macintosh: Sound

| Previous | Chapter contents | Chapter top | Section top | Next |

Sound Channel Status Records

To obtain information about a sound channel, you can pass a pointer to a sound channel status record to the SndChannelStatus function. The SCStatus data type defines a sound channel status record.

TYPE SCStatus =
RECORD
    scStartTime:                    Fixed;          {starting time for play from disk}
    scEndTime:                      Fixed;          {ending time for play from disk}
    scCurrentTime:                  Fixed;          {current time for play from disk}
    scChannelBusy:                  Boolean;        {TRUE if channel is processing cmds}
    scChannelDisposed:              Boolean;        {reserved}
    scChannelPaused:                Boolean;        {TRUE if channel is paused}
    scUnused:                       Boolean;        {unused}
    scChannelAttributes:            LongInt;        {attributes of this channel}
    scCPULoad:                      LongInt;        {CPU load for this channel}
END;
scStartTime
If the Sound Manager is playing from disk through the specified sound channel, then scStartTime is the starting time in seconds from the beginning of the sound for the play from disk. Otherwise, scStartTime is 0.
scEndTime
If the Sound Manager is playing from disk through the specified sound channel, then scEndTime is the ending time in seconds from the beginning of the sound for the play from disk. Otherwise, scEndTime is 0.
scCurrentTime
If the Sound Manager is playing from disk through the specified sound channel, then scCurrentTime is the current time in seconds from the beginning of the disk play. Otherwise, scCurrentTime is 0. The Sound Manager updates the value of this field only periodically, and you should not rely on the accuracy of its value.
scChannelBusy
If the specified channel is currently processing sound commands, then scChannelBusy is TRUE ; otherwise, scChannelBusy is FALSE .
scChannelDisposed
Reserved for use by Apple Computer, Inc.
scChannelPaused
If the Sound Manager is playing from disk through the specified sound channel and the play from disk is paused, then scChannelPaused is TRUE ; otherwise, scChannelPaused is FALSE . This field is also TRUE if the channel was paused with the pauseCmd sound command.
scUnused
Reserved for use by Apple Computer, Inc.
scChannelAttributes
The current attributes of the specified channel. These attributes are in the channel initialization parameters format. The value returned in this field is always identical to the value passed in the init parameter to SndNewChannel .
scCPULoad
The CPU load for the specified channel. You should not rely on the value in this field.

You can mask out certain values in the scChannelAttributes field to determine how a channel has been initialized.

CONST
    initPanMask         = $0003;        {mask for right/left pan values}
    initSRateMask       = $0030;        {mask for sample rate values}
    initStereoMask      = $00C0;        {mask for mono/stereo values}
    initCompMask        = $FF00;        {mask for compression IDs}

© 1998 Apple Computer, Inc.

| Previous | Chapter contents | Chapter top | Section top | Next |